package com.coffee.admin.api.platform.service;

import com.coffee.admin.api.platform.query.PlatformPermissionQuery;
import com.coffee.admin.api.platform.result.PlatformPermissionResult;
import com.coffee.core.entity.Page;
import com.coffee.core.entity.PagerInfo;
import com.coffee.core.exception.BusinessException;

import java.util.List;
import java.util.Map;
import java.util.Set;


public interface PlatformPermissionService {

	Page<PlatformPermissionResult> getPager(PlatformPermissionQuery param, PagerInfo pr);
	
	Integer count(PlatformPermissionQuery param);
	
	PlatformPermissionResult getDetail(Integer id);
	
	List<PlatformPermissionResult> getList(PlatformPermissionQuery param, PagerInfo pr);
	
	List<PlatformPermissionResult> getList(PlatformPermissionQuery param);
	
	List<PlatformPermissionResult> getList();

	void delete(Integer id);

	void addOrUpdate(PlatformPermissionResult result)throws BusinessException;
	
	Map<Integer,PlatformPermissionResult> getItemMap(Set<Integer> idSet);
	
	Map<Integer,PlatformPermissionResult> getItemMap();

	Set<String> getPermissionSet(Integer platformId)throws BusinessException;

	List<PlatformPermissionResult> getPermissionListByLoginMerchant();
	
}